package com.lottery.material.service.admin.conf;

import com.lottery.material.pojo.conf.UserLevelDict;
import com.lottery.material.pojo.page.Page;
import com.lottery.material.pojocustom.conf.UserLevelDictCustom;

import java.util.List;

/**
 * Description：用户等级字典服务接口
 * Created by 朱正磊 on 2019-05-17 10:36
 */
public interface UserLevelDictService {

    /**
     * description：新增一条数据
     * user 朱正磊
     * time 2019-04-17 17:06
     * @param systemParameterConfig 对象
     * @return 返回持久化操作数据库状态值
     */
    Integer add(UserLevelDict systemParameterConfig);

    /**
     * description：根据主键物理删除
     * user 朱正磊
     * time 2019-04-20 15:13
     * @param id 主键
     * @return 返回持久化操作数据库状态值
     */
    Integer deleteById(Integer id);

    /**
     * description：根据主键查询唯一数据
     * user 朱正磊
     * time 2019-04-19 20:11
     * @param id 主键
     * @return 返回唯一数据
     */
    UserLevelDict findById(Integer id);

    /**
     * description：根据主键修改一条数据
     * user 朱正磊
     * time 2019-04-17 17:09
     * @param systemParameterConfig 对象
     * @return 返回持久化操作数据库状态值
     */
    Integer updateById(UserLevelDict systemParameterConfig);

    /**
     * description：查询扩展类分页列表
     * user 朱正磊
     * time 2019-04-17 17:01
     * @param page 分页对象
     * @return 返回扩展类分页列表数据
     */
    List<UserLevelDictCustom> findCustomListPage(Page page);

    /**
     * description：根据主键查询唯一扩展类数据
     * user 朱正磊
     * time 2019-04-17 17:03
     * @param id 主键
     * @return 返回唯一扩展类数据
     */
    UserLevelDictCustom findCustomById(Integer id);

    /**
     * description：新增一条数据
     * user 朱正磊
     * time 2019-05-17 16:00
     * @return 返回持久化操作数据库状态值
     */
    Integer add();

    /**
     * description：查询所有的数据
     * user 朱正磊
     * time 2019-05-17 16:28
     * @return 返回所有的数据
     */
    List<UserLevelDict> findAll();

    /**
     * description：根据用户等级查询唯一一条数据
     * user 朱正磊
     * time 2019-05-20 10:48
     * @param userLevel 用户等级
     * @return 返回唯一一条数据
     */
    UserLevelDict findByUserLevel(Integer userLevel);

}
